package com.vdong.common.oauth.entity.mo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * @author zhoulongbiao
 * @Date 2019/1/23 10:29
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Table(name = "user_info")
public class AppUserInfoMO implements Serializable {

    @ApiModelProperty("照片地址")
    private String photoUrl;
    @ApiModelProperty("个人介绍")
    private String introduce;
    @ApiModelProperty("性别0：未知；1：男；2：女；")
    private Byte sex;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("生日")
    private Date birthday;
    @ApiModelProperty("身份证编号")
    private String idCardNum;
    @ApiModelProperty("身份证正面")
    private String idCardFrontUrl;
    @ApiModelProperty("身份证反面")
    private String idCardBackUrl;
    @ApiModelProperty("微信号")
    private String wechatId;
    @Deprecated
    @ApiModelProperty("手机号码")
    private String phone;
    @ApiModelProperty("QQ")
    private String qq;
    @ApiModelProperty("邮箱")
    private String mail;
    @ApiModelProperty("联系人")
    private String contact;
    @ApiModelProperty("省")
    private String province;
    @ApiModelProperty("市")
    private String city;
    @ApiModelProperty("区")
    private String district;
    @ApiModelProperty("详细地址")
    private String address;
    @ApiModelProperty("申请讲师时间")
    private Date applyDate;
    @ApiModelProperty("讲师入驻时间")
    private Date passDate;
    @ApiModelProperty("申请讲师状态（0：默认值;10：待处理;20：通过;30：已拒绝;）")
    private Byte applyStatus;
    @ApiModelProperty("拒绝原因")
    private String reason;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private Long storeId;
    @ApiModelProperty("创建时间")
    private Date createDate;
}
